#pragma once
#include "CommonDef.h"
class SessionView : public Singleton<SessionView>
{
public:
    void showSitPostionLayer();

    void shuffleAnimation();

    void shakeDiceAnimation(SitPostion sitPsn, const SessionPlayer& player, short diceCunt1, short diceCunt2);

    void showPlayerInfo(const SessionPlayer& palyer, SitPostion sitPs);

    void showShuffleChess(short dispatchOffset, short gangOffset, SitPostion sitPs, const ShowOffsetPair& offsetPair);

    void showJumpChessAnimation(SitPostion sitPs, const std::vector<Chess>& handChess, bool isHost);

    void showSessionAction(const SessionActionInfo& sessionActionInfo);

    void showAllHandChess(SitPostion sitPs, const std::vector<Chess>& handChess, const std::vector<KindChess>& kindChess);

    void showCurOutputChess(SitPostion sitPs, const Chess& outputChess);

    void showAllOutputChessAnimation(SitPostion sitPs, const std::vector<Chess>& outputChess);

    void showWeaveChessAnimation(SitPostion sitPs, const KindChess& tmpWeaveChess);

    void showReady2Weave(const SessionActionInfo& sessionActionInfo);

    void showGameOverLayer(SitPostion sitPs, SessionAction action);

private:
    const OutcutActionInfo playerAction(const SessionActionInfo& sessionActionInfo);
private:
    SessionActionInfo m_sessionActionInfo;
};

